home *** CD-ROM | disk | FTP | other *** search
/ PCX Clip Art - Professional Plus / PCX Clip Art - Professional Plus.iso / tools / pc / lharc.doc < prev    next >
Text File  |  1989-07-30  |  41KB  |  1,196 lines

  1. /*----------------------------------------------------------------------
  2.  
  3.       User's Manual for High-Performance File-Compression Program
  4.  
  5.                            LHARC  Version 1.14ß
  6.                                 07/31/89
  7.  
  8.            Copyright (c) Haruyasu Yoshizaki (Yoshi), 1988-89
  9.  
  10.                                                     Nifty Serve PFF00253
  11.                                                     ASCII PCS   pcs02846
  12.  
  13. ----------------------------------------------------------------------*/
  14.  
  15. 0. It Came to Pass One Day...
  16.  
  17.    After reading "A Hard Disk Cookbook" from Shouei Press, I had a
  18.    strong desire to write my own archiving utility.  On the Nifty Serve
  19.    network, I was first exposed to Mr. Miki's Larc, which surpasses the
  20.    well-known PKware in compression ratios, as reported in the Forum
  21.    Software Debut and Review.  The next shock came when I saw Mr.
  22.    Okumura's LZari, which has even better compression-ratio performance.
  23.    I started to rewrite LZari in assembly language, trying to make it
  24.    run faster, but I could find hardly no good way to speed up the
  25.    process of un-archiving.
  26.  
  27.    So, as an alternative, I used adaptive Huffman coding with an LZSS
  28.    encoder in order to achieve similar compression ratios with shorter
  29.    decompression times.  This is the idea used in  LHARC .
  30.  
  31.    No one can be sure of eradicating all possible bugs, yet if SPACE is
  32.    more valuable than TIME to you, please give this program a try.  It
  33.    may be slower in execution, but it achieves the tightest compression
  34.    ratios of any general archiver in the present "shareware" environ-
  35.    ment.
  36.  
  37.    (Copyright reserved).
  38.  
  39.  
  40. 1. How to Use It:
  41.  
  42.    Just type "LHARC" to see a concise help screen of the program's
  43.    command structure.
  44.  
  45.  
  46.    Command-line synopsis:
  47.    ======================
  48.  
  49.     LHARC  [<command>] [{{/|-}{<switch>[-|+|2|<option>]}}...] <archive_name>
  50.          [{<drive_name>:}|{<home_directory_name>\}] [<path_name> ...]
  51.  
  52.    Only a single command can be specified on the command line, but a
  53.    group of switches can be specified together after the '/' or '-'
  54.    delimiter.  You may place switch(es) anywhere following the command.
  55.  
  56.    Hitting 'Ctrl-Break' or 'Ctrl-C' at any time will abort  LHARC 's
  57.    current operation and return you to the DOS prompt.
  58.  
  59.  
  60.  
  61.  LHARC  User's Manual                                               page 2
  62.  
  63.  
  64.  
  65.    Terminology:
  66.    ============
  67.  
  68.    A path name comprises a directory name and a file name:
  69.  
  70.         a:\tc\include\stdio.ext
  71.         |<---- Path_name ---->|
  72.         |<Directory_>||<File_>|
  73.         |<-- name -->||<name >|
  74.  
  75.    Both the archive name and file name(s) specified in the command line
  76.    can optionally include a path i.e., a drive or directory name.  If
  77.     LHARC  becomes excessively confused by your typing, it will just stop
  78.    and wait for keyboard input.  Hit 'CTRL-Break' or 'CTRL-C' to escape
  79.    back to the prompt and then use the DOS function keys to edit and
  80.    reenter your command line.   LHARC  will continue to answer your
  81.    request.
  82.  
  83.  
  84.  
  85.  LHARC  User's Manual                                               page 3
  86.  
  87.  
  88.  
  89.    Commands:
  90.    =========
  91.  
  92.    a (Add files to archive)
  93.  
  94.       LHARC  a ARCHIVE.LZH file1.ext
  95.  
  96.         Adds 'file1.ext' to 'ARCHIVE.LZH'.  If 'ARCHIVE.LZH' does
  97.         not exist, then  LHARC  will create it.  If a file with the
  98.         name 'file1.ext' already exists in the archive,  LHARC  will
  99.         replace it with the specified file.
  100.  
  101.         Including the extension '.LZH' with the archive name is
  102.         optional and  LHARC  will default to using it unless you
  103.         specify otherwise (see below under "Archive name").
  104.         However, you would certainly need to include the extension
  105.         (or just '.' for a blank extension) with any single-
  106.         character archive name or file name that might look like
  107.         one of  LHARC 's commands.
  108.  
  109.  
  110.  
  111.    u (Update files to archive)
  112.  
  113.       LHARC u ARCHIVE.LZH file1.ext
  114.  
  115.         Adds 'file1.ext' to 'ARCHIVE.LZH', the same as with the 'a'
  116.         command.  However, if 'file1.ext' already exists in the
  117.         archive,  LHARC  will check its time stamp and will keep the
  118.         newer one and ignore the older one.  (Use the /c switch to
  119.         tell  LHARC  to skip this time-stamp comparison.)
  120.  
  121.  
  122.    m (Move new files into archive)
  123.  
  124.       LHARC m ARCHIVE.LZH file1.ext
  125.  
  126.         is equivalent to
  127.  
  128.       LHARC u ARCHIVE.LZH file1.ext
  129.      DEL file1.ext
  130.  
  131.         Beware the fact that the second line is implicit.  You might
  132.         lose 'file1.ext' forever.
  133.  
  134.    f (Freshen files in archive)
  135.  
  136.       LHARC f ARCHIVE.LZH file1.ext
  137.  
  138.         Replaces 'file1.ext' in 'ARCHIVE.LZH' with the newer one
  139.         only if a file with this name already exists in the archive.
  140.         Otherwise, no action is taken.  (Use the /c switch to tell
  141.          LHARC  to skip this time-stamp comparison.)
  142.  
  143.  
  144.  
  145.  LHARC  User's Manual                                               page 4
  146.  
  147.  
  148.  
  149.    e or x (EXtract files from archive)
  150.  
  151.       LHARC e ARCHIVE.LZH d:\temp\
  152.  
  153.         Extracts all the files from 'ARCHIVE.LZH
  154.         directory \temp\ on drive D:.  If the specified directory
  155.         does not exist, then  LHARC  will prompt you whether to create
  156.         it with the message "Make directory? [Y/N]".  If no home
  157.         directory name is specified,  LHARC  will extract all files to
  158.         the current directory.
  159.  
  160.       LHARC e ARCHIVE.LZH file1.ext
  161.  
  162.         Extracts only 'file1.ext' from 'ARCHIVE.LZH'.  If a file
  163.         with the name 'file1.ext' exists in the home directory,
  164.          LHARC  will compare their time stamps and if the existing
  165.         file is older, then  LHARC  will prompt you whether to
  166.         overwrite it.  (Use the /c switch to tell  LHARC  to skip this
  167.         time-stamp comparison.)
  168.  
  169.       LHARC e ARCHIVE.LZS file.ext
  170.  
  171.         Extracts 'file.ext' from an .LZS file archived with Larc
  172.         3.xx.
  173.  
  174.         Note:  Larc is another popular archiver on Japanese PDS's.
  175.  
  176.  
  177.    p (disPlay files in archive)
  178.  
  179.       LHARC p ARCHIVE.LZH file1.ext
  180.  
  181.         Extracts 'file1.ext' from 'ARCHIVE.LZH' and redirects it to
  182.         standard output.
  183.  
  184.       LHARC p /v ARCHIVE.LZH file1.ext
  185.  
  186.         Uses the default utility LESS to format and display the
  187.         redirected output.   LHARC  creates a temporary file
  188.         '  LHARC.TMP' for viewing.  It will be deleted afterward.
  189.  
  190.       LHARC p /vsee ARCHIVE.LZH file1.ext
  191.  
  192.         Invokes the text formatter SEE, which then displays
  193.         'file1.ext' to standard output in a paged format.  Refer to
  194.         PC-LESS.ARC, LIST64A.ARC and SEE15.ARC.  (These should be
  195.         available in most BBS libraries.)
  196.  
  197.  
  198.    d (Delete files from archive)
  199.  
  200.       LHARC d ARCHIVE.LZH file1.ext
  201.  
  202.         Deletes 'file1.ext' from 'ARCHIVE.LZH'.
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  LHARC  User's Manual                                               page 5
  212.  
  213.  
  214.  
  215.    l (List files in archive)
  216.  
  217.       LHARC l ARCHIVE.LZH
  218.  
  219.         Lists information about all the files in 'ARCHIVE.LZH':
  220.         name, original size, stored size, compression ratio, date
  221.         and time, attributes, compression type (see below under
  222.         "Archive File Header") and CRC check.  Each file takes one
  223.         line of output.  A '+' before a file name indicates that a
  224.         directory name is stored with the file name.  (Use the /x
  225.         switch to tell  LHARC  to also display these directory names.)
  226.  
  227.         If you specify any file names and extensions, then only the
  228.         files with matching names or extensions will be listed:
  229.  
  230.       LHARC l ARCHIVE.LZH *.c *.h readme.doc
  231.  
  232.         Lists information on all the .C, .H and README.DOC files
  233.         in 'ARCHIVE.LZH'.
  234.  
  235.  
  236.    v (View list of files in archive)
  237.  
  238.       LHARC v ARCHIVE.LZH
  239.  
  240.         Which is equivalent to:
  241.  
  242.       LHARC l /x ARCHIVE.LZH
  243.  
  244.         Lists information about all the files in 'ARCHIVE.LZH',
  245.         except that each listing takes two lines: the first for the
  246.         full path name and the second for the rest